package Navi_run;

import info.debatty.java.lsh.LSHMinHash;
import it.unisa.dia.gas.jpbc.Element;
import it.unisa.dia.gas.jpbc.Field;
import it.unisa.dia.gas.jpbc.Pairing;
import objects.LatLonPoint;
import objects.LocationBean;
import org.ujmp.core.Matrix;

import java.math.BigInteger;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


public class params {
    public static Field GT;
    public static Field G1;
    public static Field G2;
    public static Field Zr;
    public static Pairing pairing;

    // TA公开参数
    public static BigInteger gsk_a;
    public static BigInteger gsk_b;
    public static Element gpk_g;
    public static Element gpk_g2;//就是文章中上边有个小尖角的g
    public static Element gpk_A;
    public static Element gpk_B;
    public static Map<String, String> RSAkeyMap;
    public static int MC;
    //这里的pubPara_r 和pubPara_g 更可能式ZKPK中的F和g
    //public static BigInteger pubPara_r;
    //public static Element pubPara_g;

    //模糊搜索相关参数
    public static LSHMinHash lshMinHash;
    public static Matrix HKP;
    public static Matrix SK1;
    public static Matrix SK2;
    public static Matrix V;

    //零知识证明相关参数
    public static BigInteger ZKPK_rou;
    public static BigInteger ZKPK_F;
    public static BigInteger ZKPK_g;
    public static BigInteger ZKPK_b;

    //clSign相关参数
    public static BigInteger clSign_PK_n;
    public static BigInteger clSign_PK_d1;
    public static BigInteger clSign_PK_d2;
    public static BigInteger clSign_PK_d3;
    public static BigInteger clSign_SK_p;

    //司机之间生成报告
    public static LocationBean indj;
    public static byte[] pidj;
    public static byte[] hsvj;
    public static List<byte[]> pidjs = new ArrayList<byte[]>();
    public static List<byte[]> hsvjs = new ArrayList<byte[]>();
    public static Map<String, Object> Mj = new HashMap<>();


}
